Field of the Invention
Embodiments of the present invention generally relate to a system and method for managing data of a contact center and particularly to a system and method for indexing and searching the data of the contact center.
Description of Related Art
Contact centers are employed by many enterprises to service inbound and outbound contacts from customers. A typical contact center includes a switch and/or server to receive and route incoming packet-switched and/or circuit-switched contacts and one or more resources, such as human agents and automated resources (e.g., Interactive Voice Response (IVR) units), to service the incoming contacts or work items. Contact centers distribute contacts, whether inbound or outbound, for servicing to any suitable resource according to predefined criteria. In many existing systems, the criteria for servicing the contact from the moment that the contact center becomes aware of the contact until the contact is connected to an agent are client or operator-specifiable (i.e., programmable by the operator of the contact center), via a capability called vectoring. Normally in present-day Automatic Call Distributions (ACDs) when the ACD system controller detects that an agent has become available to handle a contact, the controller identifies all predefined contact-handling queues for the agent (usually in some order of priority) and delivers to the agent the highest-priority, oldest contact that matches the agent's highest-priority queue. Generally, the only condition that results in a contact not being delivered to an available agent is that there are no contacts waiting to be handled.
The primary objective of contact center management is to ultimately maximize contact center performance and profitability. An ongoing challenge in contact center administration is monitoring and optimizing contact center efficiency. The contact center efficiency is generally measured in two ways that are service level and match rate.
Service level is one measurement of the contact center efficiency. Service level is typically determined by dividing the number of contacts accepted within the specified period by the number accepted plus the number that were not accepted, but completed in some other way (e.g., abandoned, given busy, canceled, flowed out etc.). Of course, service level definitions may vary from one enterprise to another.
Match rate is another indicator used in measuring the contact center efficiency. Match rate is usually determined by dividing the number of contacts accepted by a primary skill level agent within a period of time by the number of contacts accepted by any agent for a queue over the same period. An agent with a primary skill level is one that typically can handle contacts of a certain nature most effectively and/or efficiently. There are other contact center agents that may not be as proficient as the primary skill level agent, and those agents are identified either as secondary skill level agents or backup skill level agents. As can be appreciated, contacts received by a primary skill level agent are typically handled more quickly and accurately or effectively (e.g., higher revenue attained) than a contact received by a secondary or even backup skill level agent. Thus, it is an objective of most contact centers to optimize match rate along with service level.
In addition to service level and match rate performance measures, contact centers use other Key Performance Index (KPI), such as revenue, estimated, actual, or predicted wait time, average speed of answer, throughput, agent utilization, agent performance, agent responsiveness and the like, to calculate performance relative to their Service Level Agreements (SLAs). Operational efficiency is achieved when KPI are managed near, but not above, SLA levels.
Throughput is a measure of the number of calls/contact requests or work requests that can be processed in a given amount of time. Agent utilization is a measure of how efficiently agents' time is being used. Customer service level is a measure of the time customers spend waiting for their work to be handled. Company contact center customers wish to provide service to as many requests as possible in a given amount of time, using the least number of agents to do so, and minimizing the wait time for their customers that can increase the service level agreement of the contact center.
Typically, historical data or information of customers and agents, their behavior, workforce management etc. is stored in different data repositories or databases in the contact center. Further, vendors of the contact center do not provide a technique to store all the data in a single data repository. However, an agent of the contact center may have to access multiple data repositories to retrieve the data for providing services to customers. Further, in conventional databases, the data is stored in tables that include columns with restricted character length of business names of entities such as, ACD calls, hold ACD time, and so forth and an agent is not allowed to create columns with long names in the databases as per the convenience. Also, if the agent is not an expert or is not familiar with business definitions or textual descriptions of the entities, he may have to search files or documents of probably 1000 pages to look for the definition of the entities. Further, a manager or supervisor of the contact center may have to run a full report that includes data of all the agents of the contact center to search for a best agent on a particular day. A best agent is one that typically can handle maximum number of contacts in a day. However, such techniques are time-consuming and may also increase hold time of a call that may further affect the contact center efficiency. Furthermore, the agent may not be able to access all the relevant data from the different databases to provide satisfactory services to the customers.
There is thus a need for a system and method for indexing and storing the historical data and further enables the agent of the contact center to access the data in a faster way.